﻿using ESRI.ArcGIS.Geometry;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DGIS.Service.IService.IGeometryService
{
    public interface IGeometryStructService
    {
        /// <summary>
        /// 获取面图形的点结构
        /// </summary>
        /// <param name="polygon"></param>
        /// <returns></returns>
        Dictionary<int, List<IPoint>> GetPolygonPoints(IPolygon polygon);

        /// <summary>
        /// 获取线图形点结构
        /// </summary>
        /// <param name="polyline"></param>
        /// <returns></returns>
        List<IPoint> GetPolylinePoints(IPolyline polyline);

        /// <summary>
        /// 创建面
        /// </summary>
        /// <param name="pointsDic"></param>
        /// <returns></returns>
        IPolygon CreatePolygon(Dictionary<int, List<IPoint>> pointsDic);

        /// <summary>
        /// 创建线
        /// </summary>
        /// <param name="points"></param>
        /// <returns></returns>
        IPolyline CreatePolyline(List<IPoint> points);

        /// <summary>
        /// 获取shp的点坐标集合
        /// </summary>
        /// <param name="shpPath"></param>
        /// <param name="type"></param>
        /// <returns></returns>
        List<List<double[]>> GetShpPoints(string shpPath, out string type);
    }
}
